#pragma once
#include <rclcpp/rclcpp.hpp>

#include <string>
#include <behaviortree_cpp_v3/condition_node.h>





namespace hnurm_behavior_trees {

    class Status : public BT::ConditionNode {
    public:
    /**
     * @brief A constructor for nav2_behavior_tree::Status
     * @param condition_name Name for the XML tag for this node
     * @param conf BT node configuration
     */
    Status(
        const std::string & condition_name,
        const BT::NodeConfiguration & conf);

    Status() = delete;

    /**
     * @brief The main override required by a BT action
     * @return BT::NodeStatus Status of tick execution
     */
     static BT::PortsList providedPorts()
  {
    return {
 
        BT::InputPort<bool>("Status", "status to judge whether excute ")
        };
  }
    BT::NodeStatus tick() override;

    /**
     * @brief Creates list of BT ports
     * @return BT::PortsList Containing node-specific ports
     */


    private:
    bool status_ ;

    };

} // namespace hnurm_behavior_trees